package nl.ordina.ott.java.client.model;

import com.google.gwt.event.dom.client.ChangeEvent;
import com.google.gwt.event.dom.client.ChangeHandler;

public class ConclusieChangeHandler implements ChangeHandler {
	private final Vakje vakje;
	
	public ConclusieChangeHandler(Vakje vakje) {
		this.vakje = vakje;
	}
	
	public void onChange(ChangeEvent arg0) {
		try {
			int conclusie = Integer.parseInt(vakje.getText());
			if (!vakje.concludeer(conclusie)) {
				vulVakjeMetCorrecteTekst();
			}
		} catch (NumberFormatException nfe) {
			vulVakjeMetCorrecteTekst();
		}
	}
	
	private void vulVakjeMetCorrecteTekst() {
		if (vakje.isGeconcludeerd()) {
			vakje.setText("" + vakje.getGeconcludeerdeWaarde());
		} else {
			vakje.setText(vakje.getMogelijkeOpties());
		}
	}
}
